package edu.xust.entity;

import java.util.ArrayList;
import java.util.List;

public class StationExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    public StationExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andSidIsNull() {
            addCriterion("SID is null");
            return (Criteria) this;
        }

        public Criteria andSidIsNotNull() {
            addCriterion("SID is not null");
            return (Criteria) this;
        }

        public Criteria andSidEqualTo(String value) {
            addCriterion("SID =", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidNotEqualTo(String value) {
            addCriterion("SID <>", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidGreaterThan(String value) {
            addCriterion("SID >", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidGreaterThanOrEqualTo(String value) {
            addCriterion("SID >=", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidLessThan(String value) {
            addCriterion("SID <", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidLessThanOrEqualTo(String value) {
            addCriterion("SID <=", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidLike(String value) {
            addCriterion("SID like", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidNotLike(String value) {
            addCriterion("SID not like", value, "sid");
            return (Criteria) this;
        }

        public Criteria andSidIn(List<String> values) {
            addCriterion("SID in", values, "sid");
            return (Criteria) this;
        }

        public Criteria andSidNotIn(List<String> values) {
            addCriterion("SID not in", values, "sid");
            return (Criteria) this;
        }

        public Criteria andSidBetween(String value1, String value2) {
            addCriterion("SID between", value1, value2, "sid");
            return (Criteria) this;
        }

        public Criteria andSidNotBetween(String value1, String value2) {
            addCriterion("SID not between", value1, value2, "sid");
            return (Criteria) this;
        }

        public Criteria andStationnameIsNull() {
            addCriterion("stationName is null");
            return (Criteria) this;
        }

        public Criteria andStationnameIsNotNull() {
            addCriterion("stationName is not null");
            return (Criteria) this;
        }

        public Criteria andStationnameEqualTo(String value) {
            addCriterion("stationName =", value, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameNotEqualTo(String value) {
            addCriterion("stationName <>", value, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameGreaterThan(String value) {
            addCriterion("stationName >", value, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameGreaterThanOrEqualTo(String value) {
            addCriterion("stationName >=", value, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameLessThan(String value) {
            addCriterion("stationName <", value, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameLessThanOrEqualTo(String value) {
            addCriterion("stationName <=", value, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameLike(String value) {
            addCriterion("stationName like", value, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameNotLike(String value) {
            addCriterion("stationName not like", value, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameIn(List<String> values) {
            addCriterion("stationName in", values, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameNotIn(List<String> values) {
            addCriterion("stationName not in", values, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameBetween(String value1, String value2) {
            addCriterion("stationName between", value1, value2, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationnameNotBetween(String value1, String value2) {
            addCriterion("stationName not between", value1, value2, "stationname");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeIsNull() {
            addCriterion("stationManngerNmae is null");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeIsNotNull() {
            addCriterion("stationManngerNmae is not null");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeEqualTo(String value) {
            addCriterion("stationManngerNmae =", value, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeNotEqualTo(String value) {
            addCriterion("stationManngerNmae <>", value, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeGreaterThan(String value) {
            addCriterion("stationManngerNmae >", value, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeGreaterThanOrEqualTo(String value) {
            addCriterion("stationManngerNmae >=", value, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeLessThan(String value) {
            addCriterion("stationManngerNmae <", value, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeLessThanOrEqualTo(String value) {
            addCriterion("stationManngerNmae <=", value, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeLike(String value) {
            addCriterion("stationManngerNmae like", value, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeNotLike(String value) {
            addCriterion("stationManngerNmae not like", value, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeIn(List<String> values) {
            addCriterion("stationManngerNmae in", values, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeNotIn(List<String> values) {
            addCriterion("stationManngerNmae not in", values, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeBetween(String value1, String value2) {
            addCriterion("stationManngerNmae between", value1, value2, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngernmaeNotBetween(String value1, String value2) {
            addCriterion("stationManngerNmae not between", value1, value2, "stationmanngernmae");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelIsNull() {
            addCriterion("stationManngerTel is null");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelIsNotNull() {
            addCriterion("stationManngerTel is not null");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelEqualTo(String value) {
            addCriterion("stationManngerTel =", value, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelNotEqualTo(String value) {
            addCriterion("stationManngerTel <>", value, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelGreaterThan(String value) {
            addCriterion("stationManngerTel >", value, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelGreaterThanOrEqualTo(String value) {
            addCriterion("stationManngerTel >=", value, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelLessThan(String value) {
            addCriterion("stationManngerTel <", value, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelLessThanOrEqualTo(String value) {
            addCriterion("stationManngerTel <=", value, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelLike(String value) {
            addCriterion("stationManngerTel like", value, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelNotLike(String value) {
            addCriterion("stationManngerTel not like", value, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelIn(List<String> values) {
            addCriterion("stationManngerTel in", values, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelNotIn(List<String> values) {
            addCriterion("stationManngerTel not in", values, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelBetween(String value1, String value2) {
            addCriterion("stationManngerTel between", value1, value2, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationmanngertelNotBetween(String value1, String value2) {
            addCriterion("stationManngerTel not between", value1, value2, "stationmanngertel");
            return (Criteria) this;
        }

        public Criteria andStationnumIsNull() {
            addCriterion("stationNum is null");
            return (Criteria) this;
        }

        public Criteria andStationnumIsNotNull() {
            addCriterion("stationNum is not null");
            return (Criteria) this;
        }

        public Criteria andStationnumEqualTo(String value) {
            addCriterion("stationNum =", value, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumNotEqualTo(String value) {
            addCriterion("stationNum <>", value, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumGreaterThan(String value) {
            addCriterion("stationNum >", value, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumGreaterThanOrEqualTo(String value) {
            addCriterion("stationNum >=", value, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumLessThan(String value) {
            addCriterion("stationNum <", value, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumLessThanOrEqualTo(String value) {
            addCriterion("stationNum <=", value, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumLike(String value) {
            addCriterion("stationNum like", value, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumNotLike(String value) {
            addCriterion("stationNum not like", value, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumIn(List<String> values) {
            addCriterion("stationNum in", values, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumNotIn(List<String> values) {
            addCriterion("stationNum not in", values, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumBetween(String value1, String value2) {
            addCriterion("stationNum between", value1, value2, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationnumNotBetween(String value1, String value2) {
            addCriterion("stationNum not between", value1, value2, "stationnum");
            return (Criteria) this;
        }

        public Criteria andStationpassIsNull() {
            addCriterion("stationPass is null");
            return (Criteria) this;
        }

        public Criteria andStationpassIsNotNull() {
            addCriterion("stationPass is not null");
            return (Criteria) this;
        }

        public Criteria andStationpassEqualTo(String value) {
            addCriterion("stationPass =", value, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassNotEqualTo(String value) {
            addCriterion("stationPass <>", value, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassGreaterThan(String value) {
            addCriterion("stationPass >", value, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassGreaterThanOrEqualTo(String value) {
            addCriterion("stationPass >=", value, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassLessThan(String value) {
            addCriterion("stationPass <", value, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassLessThanOrEqualTo(String value) {
            addCriterion("stationPass <=", value, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassLike(String value) {
            addCriterion("stationPass like", value, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassNotLike(String value) {
            addCriterion("stationPass not like", value, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassIn(List<String> values) {
            addCriterion("stationPass in", values, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassNotIn(List<String> values) {
            addCriterion("stationPass not in", values, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassBetween(String value1, String value2) {
            addCriterion("stationPass between", value1, value2, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationpassNotBetween(String value1, String value2) {
            addCriterion("stationPass not between", value1, value2, "stationpass");
            return (Criteria) this;
        }

        public Criteria andStationimageIsNull() {
            addCriterion("stationImage is null");
            return (Criteria) this;
        }

        public Criteria andStationimageIsNotNull() {
            addCriterion("stationImage is not null");
            return (Criteria) this;
        }

        public Criteria andStationimageEqualTo(String value) {
            addCriterion("stationImage =", value, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageNotEqualTo(String value) {
            addCriterion("stationImage <>", value, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageGreaterThan(String value) {
            addCriterion("stationImage >", value, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageGreaterThanOrEqualTo(String value) {
            addCriterion("stationImage >=", value, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageLessThan(String value) {
            addCriterion("stationImage <", value, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageLessThanOrEqualTo(String value) {
            addCriterion("stationImage <=", value, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageLike(String value) {
            addCriterion("stationImage like", value, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageNotLike(String value) {
            addCriterion("stationImage not like", value, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageIn(List<String> values) {
            addCriterion("stationImage in", values, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageNotIn(List<String> values) {
            addCriterion("stationImage not in", values, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageBetween(String value1, String value2) {
            addCriterion("stationImage between", value1, value2, "stationimage");
            return (Criteria) this;
        }

        public Criteria andStationimageNotBetween(String value1, String value2) {
            addCriterion("stationImage not between", value1, value2, "stationimage");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}